Mobile applications and server applications frequently transact with data and information stored in databases. These transactions may include a plurality of operations, such as read operations that request data and information from a database or write operations that update data and information contained in the database. Each operation includes a request—which includes a request delay, a read or write time—which consumes an amount of time, and an acknowledgement—which also includes an acknowledgement delay. Moreover, each operation is performed in series. Thus, the total time to perform a single transaction can be determined by multiplying the number of operations by the amount of time to perform each transaction.
Furthermore, an operation may lock a row, preventing other operations from reading or writing to the row. The combination of performing operations in series and row locks for operations performed in parallel may significantly inhibit the performance of a database, which may prevent the database from scaling.
Aspects described herein may address these and other problems, and generally improve the quality, efficiency, and speed of performing database operations in parallel and avoiding row locks.